package com.java3_6;

import javax.swing.plaf.synth.SynthRadioButtonUI;
import java.util.*;

public class java3_6 {
    //    public static void main(String[] args) {
//        //基本数据变量比较大小
////        int num1 = 10;
////        int num2 = 20;
////        System.out.println(num1 > num2);
//
////        Student student1 = new Student("zhangsan",20);
////        Student student2 = new Student("zhangsan", 20);
////        //引用数据类型的==号使用来比较两个对象的地址是否相同的
////        System.out.println(student2 == student1);
////
////        //使用equals（）方法比较地址是否相同(不重写就是Object类里面的equals（）方法)
////        System.out.println(student1.equals(student2));
//
//        //想要对引用数据变量进行排序的话，就需要实现Comparable或Comparator接口
//
////        String[] strName = {"Tom","Jack","Lucy","Mack"};
//
//        Student student1 = new Student("Tom",19);
//        Student student2 = new Student("Mack",22);
//        Student student3 = new Student("Lucy",23);
//        Student student4 = new Student("Jack",19);
//
//        Student[] stu = {student1,student2,student3,student4};
////        Arrays.sort(stu);
//
////        for(Student s : stu){
////            System.out.println(s.toString());
////        }
//
////        System.out.println(Arrays.toString());
//
////        for (int i = 0; i < stu.length; i++) {
////            System.out.println(stu[i].toString());
////        }
//
//
////        Arrays.sort(stu, new Comparator() {
////            @Override
////            public int compare(Object o1, Object o2) {
////                if(o1 == o2)
////                    return 0;
////                if(o1 instanceof Student o11&& o2 instanceof Student o22){
////                    int value = Integer.compare(o11.getAge(),o22.getAge());
////                    if(value != 0)
////                        return -value;
////                    return -o11.compareTo(o22);
////                }
////                throw new RuntimeException("类型错误");
////            }
////        });
////
////        for(Student s : stu){
////            System.out.println(s.toString());
////        }
//
//        //实现Comparable接口那么之后都按照这个实行自然排序
//        //实现Comparator接口只是用一下，不是一劳永逸
//
//
//
//
//    }
//    public static void main(String[] args) {
//        //集合
////        Collection coll = new ArrayList();
////        coll.add(123);
////        coll.add("hello world");
////        coll.add(456);
////        coll.add('Z');
////
////        Iterator iterator = coll.iterator();
////        while (iterator.hasNext()) {
////            System.out.print(iterator.next() + " ");
////        }
////        System.out.println();
////
////        ArrayList list = new ArrayList();
////        list.add(99);
////        list.add("haha");
////        list.add(3.14);
////        list.add('W');
////
////        coll.add(list);
////        Iterator iterator1 = coll.iterator();
////        while (iterator1.hasNext()) {
////            System.out.print(iterator1.next() + " ");
////        }
//
//
//        //打印集合中的数据的方法
//        //(1)
////        for (int i = 0; i < coll.size(); i++) {
////            System.out.println(coll.get(i));
////        }
//
//        //(2)迭代器
////        Iterator iterator = coll.iterator();
////        while(iterator.hasNext()){
////            System.out.println(iterator.next());
////        }
//
//        //(3)增强for循环  --  只能打印数组和集合
////        for (Object obj : coll){
////            System.out.println(obj);
////        }
//
//
//    }
//    public static void main(String[] args) {
//        ArrayList coll = new ArrayList<>();
//        coll.add(123);
//        coll.add("hello world");
//        coll.add(456);
//        coll.add('Z');
//
//        Object[] array = coll.toArray();
//        System.out.println(Arrays.toString(array));
//
//        List<Object> list = Arrays.asList(array);
//        System.out.println(list);
//
//
//    }
//    public static void main(String[] args) {
//        ArrayList list = new ArrayList();
//        list.add(123);
//        list.add("hello");
//        list.add(3.14);
//        list.add('S');
//
//        //数组使用length求数组的长度
//        //集合使用size来求集合的长度
//        System.out.println(list.size());
//
//        for (int i = 0; i < list.size(); i++) {
//            System.out.print(list.get(i) + " ");
//        }
//
//
//    }
//    public static void main(String[] args) {
//        Collection coll = new ArrayList<>();
//        coll.add(123);
//        System.out.println(coll.isEmpty());
//        public boolean isEmpty() {
//            return size == 0;
//        }
//
//        Collection coll = new ArrayList();
//        coll.add(123);
//        coll.add(3.14);
//        coll.add("hello world");
//        coll.add('A');
//        People people = new People("zhangsan",20);
//        coll.add(people);

//        Iterator iterator = coll.iterator();
//        while(iterator.hasNext()){
//            System.out.println(iterator.next());
//        }
//
//        System.out.println(coll.contains("hello world"));
//        System.out.println(coll.contains(new People("zhangsan", 20)));

//        Collection collection = new ArrayList();
//        collection.add(123);
//        collection.add(3.14);
//        collection.add('A');

    //底层就是一个一个取出来去使用contains（）方法判断
//        System.out.println(coll.containsAll(collection));
//        System.out.println(coll.equals(collection));

    //添加进去的都是Object类型的变量
//        for (Object c : collection){
//            System.out.println(c);
//        }
//
//        //就是将每一个元素变成null
//        collection.clear();
//        System.out.println("这里已经去除掉collection内部的数据了");
//        Iterator iterator = collection.iterator();
//        while(iterator.hasNext()){
//            System.out.println(iterator.next());
//        }

    //        Collection coll = new ArrayList();
//        coll.add(123);
//        coll.add(3.14);
//        coll.add("hello world");
//        coll.add('A');
//        People people = new People("zhangsan",20);
//        coll.add(people);
//
//        //Collection里面没有移除对应的索引位置的元素
////        coll.remove('A');
//
//        Collection collection = new ArrayList();
//        collection.add(123);
//        collection.add("hello world");
//        collection.add(3.14);
//
//        //移除集合中的所有元素
//        //coll.removeAll(collection);
//
//        //保留两个集合的交集
//        coll.retainAll(collection);
//
//        Iterator iterator = coll.iterator();
//        while(iterator.hasNext()){
//            System.out.println(iterator.next());
//        }
//        Collection coll = new ArrayList();
//        coll.add(123);
//        coll.add(3.14);
//        coll.add("hello world");
//        coll.add('A');
//        People people = new People("zhangsan",20);
//        coll.add(people);
//
//        //集合转化成数组
//        Object[] array = coll.toArray();
//        System.out.println(Arrays.toString(array));
//
//        //数组转化成集合
//        List<Object> list = Arrays.asList(array);
//        System.out.println(list);
//        Set set = new HashSet();
//        set.add(123);
//        set.add(3.14);
//        set.add("hello world");
//        set.add('A');
//        set.add(new People("zhangsan",20));
//        set.add(new People("zhangsan",20));
//        set.add(new People("zhangsan",20));
//        set.add(new People("zhangsan",20));
//        set.add(new People("lisi",19));
//        //使用HashSet必须重写equals和hashCode方法
//
//
//
//        System.out.println(set);
//        Set set = new LinkedHashSet();
//        set.add(123);
//        set.add(3.14);
//        set.add("hello world");
//        set.add('A');
//        set.add(new People("zhangsan",20));
//        set.add(new People("lisi", 20));
//
//        Iterator iterator = set.iterator();
//        while(iterator.hasNext()){
//            System.out.println(iterator.next());
//        }
    //内部存在双向链表所以可以按照顺序打印
//        List list = new ArrayList();
//        list.add(123);
//        list.add(3.14);
//        list.add("hahaha");
//        list.add('A');
//
//        //Lisi里面有关于索引的方法
//        for (int i = 0; i < list.size(); i++) {
//            System.out.print(list.get(i) + " ");
//        }
    //    }
    public static void main(String[] args) {

        TreeSet treeSet = new TreeSet();
        treeSet.add("Tom");
        treeSet.add("Jack");
        treeSet.add("Mack");
        treeSet.add("Tony");
        //会报ClassCastException警告，String cannot be cast to class java.lang.Integer
        treeSet.add(123);

        Iterator iterator = treeSet.iterator();
        while(iterator.hasNext()){
            System.out.println(iterator.next());
        }


    }
}
